Conversation
…l and uv.lock This commit updates the version constraint for the `numpy` package in both `pyproject.toml` and `uv.lock` files from `<2` to `>=1.26`. This change ensures compatibility with newer versions of `numpy`, enhancing the stability and functionality of the project.
WalkthroughThe numpy version constraint in the project dependencies has been updated from Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes
Poem
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
✨ Finishing touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (1)
uv.lockis excluded by!**/*.lock
📒 Files selected for processing (1)
pyproject.toml(1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (10)
- GitHub Check: Tests 3.11 on macos-latest
- GitHub Check: Tests 3.11 on windows-latest
- GitHub Check: Tests 3.12 on ubuntu-latest
- GitHub Check: Tests 3.12 on windows-latest
- GitHub Check: Tests 3.11 on ubuntu-latest
- GitHub Check: Tests 3.13 on windows-latest
- GitHub Check: Tests 3.13 on macos-latest
- GitHub Check: Tests 3.13 on ubuntu-latest
- GitHub Check: Tests 3.12 on macos-latest
- GitHub Check: nbmake
| "numpy>=1.26", | ||
| "urllib3", | ||
| "icons", | ||
| ] |
There was a problem hiding this comment.
🧩 Analysis chain
🌐 Web query:
geopandas NumPy 2.x compatibility support latest release
💡 Result:
Yes — current GeoPandas releases support NumPy 2.x. GeoPandas 1.2 (latest series) sets numpy 2.0 as the minimum tested/required NumPy version; earlier maintenance releases also added/updated compatibility notes for the upcoming NumPy 2.0 transition. [1][2]
Sources:
- GeoPandas changelog / release notes (notes saying GeoPandas 1.2 requires numpy 2.0). [1]
- GeoPandas GitHub releases (compatibility notes for NumPy 2.0 in recent releases). [2]
🌐 Web query:
fiona NumPy 2.x compatibility support latest release
💡 Result:
Short answer: Fiona itself began adapting for NumPy 2.x in the 1.10 pre‑releases (1.10a1) and related fixes; downstream projects (e.g., GeoPandas) also made explicit compatibility fixes for NumPy 2.0 when updating to work with Fiona 1.10. See Fiona 1.10a1 / PyPI notes and the GeoPandas changelog mention. [1][2][3]
Sources
- Fiona 1.10a1 / PyPI release notes (notes about removing a direct NumPy dependency and other 1.10 changes). [1]
- Fiona GitHub releases (history including 1.9.6 and 1.10 pre‑release notes). [2]
- GeoPandas / community notes referencing fixes for compatibility with NumPy 2.0 and Fiona 1.10. (Stack Overflow summary pointing to GeoPandas changelog). [3]
If you want, I can: (a) check the very latest Fiona release tag/wheels (Dec 2025) and confirm explicit NumPy 2.x support, or (b) give exact pip/conda install pins that are known to work with NumPy 2.x in your environment.
🌐 Web query:
rioxarray NumPy 2.x compatibility support latest release
💡 Result:
Yes — rioxarray added NumPy 2.x support in the 0.20.0 release. See the rioxarray history/changelog entry noting "DEP: numpy 2+" for 0.20.0. [1][2]
Sources:
- rioxarray History (0.20.0 changelog). [1]
- rioxarray 0.20.0 release record. [2]
🌐 Web query:
xarray NumPy 2.x compatibility support latest release
💡 Result:
Yes — xarray added NumPy 2.x compatibility in 2024 (compatibility listed in the 2024.03.0 / 2024.06.0 release notes). [1][2]
References:
- xarray “What’s New” (mentions compatibility with NumPy 2). [1]
- xarray GitHub issue/PR addressing NumPy 2 Unicode/API changes. [2]
🌐 Web query:
netcdf4 NumPy 2.x compatibility support latest release
💡 Result:
Short answer: As of the latest netcdf4‑python release (v1.7.3, published Oct 13, 2025) there is not an explicit statement in the netcdf4 changelog that netcdf4 wheels are built for NumPy 2.x; users still report binary‑compatibility warnings when netcdf4 was built against a different NumPy ABI. The related cftime package does list NumPy 2.0 compatibility (added June 2024), but netcdf4 may require rebuilt wheels (or a release explicitly built against NumPy 2) to be fully NumPy‑2‑compatible. See sources below.
Sources:
- netcdf4‑python repository / release notes (v1.7.3, Oct 13, 2025). [1]
- Zenodo release record for netcdf4‑python v1.7.3 (Oct 13, 2025). [2]
- GitHub issue reporting NumPy binary incompatibility warning for netcdf4-python. [3]
- cftime (time handling used by netcdf4) PyPI changelog noting NumPy 2.0 compatibility (June 7, 2024). [4]
References
[1] https://github.com/Unidata/netcdf4-python
[2] https://zenodo.org/records/17343529
[3] Unidata/netcdf4-python#1354
[4] https://pypi.org/project/cftime/
NumPy 2.x compatibility blocked by netcdf4-python; add upper bound or verify wheels.
Switching from "numpy<2" to "numpy>=1.26" (Line 41) allows NumPy 2.x. Most dependencies in this project's geo/science stack—geopandas (1.2+), fiona (1.10+), rioxarray (0.20+), and xarray (2024.03+)—explicitly support NumPy 2.x. However, netcdf4-python (latest v1.7.3, Oct 2025) has no published wheels built against NumPy 2.x and users report binary-compatibility warnings. Either (a) constrain to "numpy>=1.26,<2" until netcdf4 releases NumPy 2-compatible wheels, or (b) document and test that pre-built netcdf4 wheels work acceptably in your CI matrix against NumPy 2.x.
🤖 Prompt for AI Agents
In pyproject.toml around lines 41 to 44, the change from "numpy<2" to
"numpy>=1.26" allows NumPy 2.x which can break binary compatibility with
netcdf4-python; either pin numpy to "numpy>=1.26,<2" to avoid NumPy 2 until
netcdf4 publishes compatible wheels, or keep the relaxed spec but add CI matrix
jobs that test the project with NumPy 2 and verify netcdf4 wheels behave (and
add a note in docs/compatibility describing the potential netcdf4
binary-compatibility issue and the mitigation).
This commit updates the version constraint for the
numpypackage in bothpyproject.tomlanduv.lockfiles from<2to>=1.26. This change ensures compatibility with newer versions ofnumpy, enhancing the stability and functionality of the project.Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.